---
title: "SIGNL4 Provider"
description: "SIGNL4 offers critical alerting, incident response and service dispatching for operating critical infrastructure. It alerts you persistently via app push, SMS text and voice calls including tracking, escalation, collaboration and duty planning. Find out more at [signl4.com](https://www.signl4.com/)"
---

## Inputs

The `notify` function in the `Signl4Provider` class takes the following parameters:

```python
kwargs (dict):
    title (str): Title of the SIGNL4 alert. *Required*
    message (str): Alert message.
    user (str): User, e.g. the requester of the incident.
    s4_external_id (str): If the event originates from a record in a 3rd party system, use this parameter to pass the unique ID of that record. That ID will be communicated in outbound webhook notifications from SIGNL4, which is great for correlation / synchronization of that record with the alert.
    s4_status (str): If you want to resolve an existing alert by an external id (s4_external_id), you can add this status parameter. It has three possible values. new: Default value which means that this event triggers a new alert. acknowledged: If you want to acknowledge a previously triggered alert (e.g. someone responded in the 3rd party system and not in the mobile app during business hours), set the s4_status to 'acknowledged' and provide an external ID via the s4_external_id parameter for the alert you want to acknowledge. It is only possible to acknowledge a Signl with a provided external id that initially triggered it. resolved: If you want to resolve a previously triggered alert (e.g. monitoring system has auto-closed the event), make sure to set the s4_status to 'resolved' and provide an external ID via the s4_external_id parameter for the alerts(s) you want to resolve. It is only possible to resolve a Signl with a provided external id that initially triggered it.
    s4_service (str): Assigns the alert to the service / system category with the specified name.
    s4_location (str): Transmit location information ('latitude, longitude') with your event and display a map in the mobile app.
    s4_alerting_scenario (str): If this event triggers a Signl, allows to control how SIGNL4 notifies the team. single_ack: Only one person needs to acknowledge this alert. multi_ack: The Signl must be confirmed by the number of people who are on duty at the time this alert is created. emergency: All people in the team are notified regardless of their duty status and must acknowledge the Signl, which is also assigned to the built-in emergency category.
    s4_filtering (bool): Specify a boolean value of true or false to apply event filtering for this event, or not. If set to true, the event will only trigger a notification to the team, if it contains at least one keyword from one of your services and system categories (i.e. it is whitelisted).
```

You can find more information [here](https://connect.signl4.com/webhook/docs/index.html).

## Authentication Parameters

The Signl4ProviderAuthConfig class takes the following parameters:
python
signl4_integration_secret (str): Your SIGNL4 integration or team secret. 

## Connecting with the Provider

To use the Signl4Provider, you'll need to provide your signl4_integration_secret.

You can find your integration or team secret in the SIGNL4 web portal under **Teams** or **Integrations** -> **Distribution Rules**.

The signl4_integration_secret is used to post events to SIGNL4 using the webhook API.

## Notes

The provider uses either the events API or the incidents API to create an alert or an incident. The choice of API to use is determined by the presence of either a routing_key or an api_key.

## Useful Links

- SIGNL4: https://signl4.com/
- SIGNL4 knowledge base: https://support.signl4.com/
- SIGNL4 getting-started videos: https://www.youtube.com/watch?v=bwYSYOjMJZ8&list=PL9FRxukdQyk9QRZPOEH3jhRX9WQCovCc6
- SIGNL4 videos: https://vimeo.com/showcase/signl4
